package com.ly.heart.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ly.common.core.domain.BaseVo;

import java.util.Date;
import java.util.List;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * <p>
 * 应付付款单核销单
 * </p>
 *
 * @author WuZH
 * @since 2024-08-12
 */
@Data
@TableName ( "erp_king_payable_receivable_verification_info" )
@ApiModel ( value = "KingPayableVerificationEntity对象", description = "应付付款单核销单" )
public class KingPayableReceivableVerificationEntity extends BaseVo {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty ( "id" )
    @TableId ( value = "id", type = IdType.INPUT )
    private String id;

    @ApiModelProperty ( "单据编号" )
    @TableField ( "doc_no" )
    private String docNo;

    @ApiModelProperty ( "结算组织" )
    @TableField ( "settlement_company" )
    private String settlementCompany;

    @ApiModelProperty ( "业务日期" )
    @JsonFormat(pattern = "yyyy-MM-dd")
    @TableField ( "biz_time" )
    private Date bizTime;

    @ApiModelProperty ( "本位币" )
    @TableField ( "own_currency_title" )
    private String ownCurrencyTitle;

    @ApiModelProperty ( "收付组织" )
    @TableField ( "pay_receipt_company" )
    private String payReceiptCompany;

    @ApiModelProperty ( "核销人" )
    @TableField ( "verification_name" )
    private String verificationName;

    @ApiModelProperty ( "所属组织" )
    @TableField ( "dept_id" )
    private String deptId;

    @ApiModelProperty ( "核销类型；1：自动核销；2：匹配核销；3：手动核销" )
    @TableField ( "verification_type" )
    private Integer verificationType;

    @ApiModelProperty ( "创建人" )
    @TableField ( "create_by" )
    private String createBy;

    @ApiModelProperty ( "创建时间" )
    @TableField ( "create_time" )
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @ApiModelProperty ( "更新人" )
    @TableField ( "update_by" )
    private String updateBy;

    @ApiModelProperty ( "更新时间" )
    @TableField ( "update_time" )
    private Date updateTime;

    @ApiModelProperty ( "是否可用" )
    @TableField ( "is_used" )
    private Integer isUsed;

    @ApiModelProperty ( "类型，1=应付付款核销单；2=应收收款核销单" )
    @TableField ( "type" )
    private Integer type;

    @TableField(exist = false)
    private List<KingPayableReceivableVerificationDetailEntity> kingPayableVerificationDetailEntities;

}
